<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>支持正在的字符串函数</title>
  <script>
    /**
     * match: 从当前字符串对象中去查找匹配的子串，并返回第一个匹配的子串（数组形式）
     */
    var str = 'helloworld'
    var arr = str.match('o')    // 字符串匹配
    console.log(arr)

    str = 'hello            wor    ld '
    console.log(str.match(/\s+/g))  // 正则表达式匹配

    /**
     * split: 使用指定的分隔符，对当前字符串进行切割，返回切割的内容，以数组的形式返回
     */
    var str = 'i    have    a    story'
    console.log(str.split(/\s+/))
    console.log(str.match(/\w+/g))

    var str = 'sunxsh89899is804380924590a745893298superman'
    console.log(str.split(/[0-9]+/))

    /**
     * replace: 将当前字符串中的某些内容替换为指定的内容
     */
    var str = 'i love liyiran'
    console.log(str.replace(/li[\w]+/, 'liyawei'))

    str = 'liyiran Yinxiaochang yaozHEn tanhuAXiao yanglan'
    console.log(str.replace(/[a-z]+/ig, 'liyiwei'))
    console.log(str.match(/[a-z]+/ig))

    /**
     * search: 查找子串的从头到尾顺序搜索，找到满足要求的子串立即返回，返回子串的索引，如果搜索不到则返回-1，
     * 和indexOf的作用基本一致，只是该方法支持正则
     */
    var str = '7hfgefiueiyanglanu8ufgej3'
    console.log(str.search(/y[a-z]+l[a-z]+/))

    str = '87d7s8d孙小双u8ujfedgfe'
    console.log(str.search(/[\u4e00-\u9fa5]/))

    /**
     * 修饰符:
     *  1. i: ignorecase忽略大小写
     *  2. g: global 全局搜索
     */
  </script>
</head>

<body>

</body>

</html>